The present invention relates generally to simulated racing games, and more particularly to simulating race statistics and results for portions of a race or a full race or responsive to an interrupt condition during a simulated race.
Yellow Flags (cautions) are a major facet of racing sports such as NASCAR racing. There are a multitude of strategies and positional changes that result from a yellow flag caused by a wreck, spin, or other event. For example, a yellow flag provides an opportunity for cars to take pit stops, cars to bunch up, and lapped cars to catch up and become untapped. In simulated racing games, such as NASCAR Thunder(trademark) 2002, Yellow Flag options may be provided to enhance the reality of the game to conform with events as would take place in a real world race (e.g., a NASCAR-sanctioned race). However, in such simulated racing games, many people often refrain from activating a Yellow Flag enabling option due to the tedium of watching cars pace around the track slowly, e.g., 3 laps or more, during the cautionary period. It is therefore desirable to provide racing games that keep the strategy and gameplay associated with cautionary events such as would occur with activated Yellow Flag options, but which allow one to remove the perceived tedium previously associated with such game options.
Further, in current racing games, when participating in a scheduled season, or tuning, there is generally no way to progress through the schedule without entering and racing or quitting out of each race in the schedule. This can make tuning, or gameplay, a very time consuming process. It is therefore desirable to provide racing games that allow a user to simulate complete races or partial races, for example, to facilitate tuning and/or quick progression through a season mode.
The present invention provides simulation methods that enhance the reality of a racing game and also reduce perceived tedium associated with interrupt events, for example, cautionary events such as Yellow Flag events or user selected interrupts such as race termination. The present invention also provides for enhanced full race simulation and partial race simulation. In general, as used herein, xe2x80x9cinterruptxe2x80x9d or xe2x80x9cinterrupt eventxe2x80x9d is intended to refer to an interrupt condition responsive to a game event that causes an interruption in normal game play, which may be completely AI generated, completely user generated, or partially AI generated and partially user generated, such as a user selection responsive to a computer generated event.
To overcome delays inherent due to Yellow Flag or other cautionary events, the present invention provides the player with the ability to skip ahead, yet simulate real life events that would occur during the caution period. The player(s) are not forced to watch the entire pace lap when a Yellow Flag or other cautionary event occurs. The most exciting or interactive parts are left available to the user (such as the option to pit, or the ability to race back to the start/finish line at the onset of a caution in a race such as a NASCAR race), but the more tedious parts of the caution event are skipped over and simulated. The user is then placed in a position to restart the race, and that position is determined by both the actual user actions as well as the simulated events that occurred during the cautionary period. A simulation module simulates events that may occur during the cautionary period based on, e.g., current relative position of vehicles, attributes and current statistics for vehicles, whether or not other vehicles choose to make a pit stop etc., and compiles new statistics and attributes that are used in the resumed race. This break in the action also provides an opportunity for other features to be presented to the user, e.g., to add statistic banners, wreck replays, and race recaps without worry about interrupting the race action.
A full race simulation option and a partial race simulation option are also provided. These options are particularly useful for situations where statistics are accumulated for a race or set of races (e.g., for a season). For example, in a season mode, the person who is tuning or playing the season does not have to enter and exit every race on the season schedule in order to properly obtain statistics from the races. The present invention is useful for game designers creating or tuning races, and for players. For players, the present invention is particularly beneficial when a player wants to simulate a race, or portion of a race, because they don""t want to spend the time, or have no interest in a particular race or portion of a race.
A simulation module simulates events that may occur during a race and compiles statistics that can be used later, e.g., in a later race, for season standings, etc. Such statistics may include performance related statistics (e.g., lap times, total time, position relative to other vehicles, etc.) and attribute information (e.g., aggressiveness of driver, wear of vehicle, tires, suspension, etc.). Not only can a complete race be simulated, but a partial simulation of a race is also an option. For example, if a player decides to terminate a race before it is actually finished, the simulation module can make a determination of the outcome of the race using already compiled statistics and the performance of the individual cars in the race up to that point. This also benefits season statistics tracking and calculation as the generated set of data ensures that the season""s statistics are intact and properly calculated. Multiple race simulations, or multiple season simulations may also be performed in certain aspects.
A simulation module according to the present invention allows one to simulate the next race within a season or a career from the front end without entering the actual race. The module preferably has access to all of the information about the vehicles participating in the race and their attributes in order to produce appropriate simulation data. Real world statistics are imported and used in some aspects. For example, real world standings, performance statistics and attribute information are stored in a database and are used as a basis for AI-controlled vehicle performance and AI-generated simulation results.
The simulation module is configurable to execute and simulate and compile end of race statistics when a player quits out of a race, wrecks out of a race, or wins a race where some computer generated (AI generated) vehicles have not visibly finished the race.
According to an aspect of the present invention, a method is provided for simulating game state changes responsive to an interrupt condition in a computer-implemented racing game. The method typically involves interrupting the normal game state which already has a set of statistics associated with it. The method then allows for parts of the interrupted game state to be simulated in conjunction with possible user interaction, in order to derive an updated set of statistics which reflect the results of this interrupted game state. Typically, the game state is then returned to the normal game state or some type of conclusionary game state such as the end of the race.
According to another aspect of the present invention, a method is provided for simulating game state changes responsive to an interrupt condition in a computer-implemented racing game. The method typically includes generating an interrupt condition during the racing game at a first game state, the first game state having a first set of statistics associated therewith, and responsive to the interrupt condition, simulating events that occur after the first game state based on the first set of statistics so as to produce a second set of statistics associated with a second game state. The method also typically includes resuming the racing game in the second game state. The second game state may be associated with an active state of the race, e.g., before the end of the race, or it may be associated with the end of the race.
According to another aspect of the present invention, a computer readable medium is provided that includes code for controlling a processor to simulate game state changes responsive to an interrupt condition during a race in a racing game. The code typically includes instructions to retrieve a first set of statistics associated with a first game state from a database in response to an interrupt condition, simulate events that occur after the first game state based on the first set of statistics so as to produce a second set of statistics associated with a second game state, and store the second set of statistics to the data base. The second game state may be associated with an active state of the race, e.g., before the end of the race, or it may be associated with the end of the race. The second or later sets of statistics may be stored as files separate from the first set of statistics, or each subsequent statistics file may be incorporated with the prior file so that one set of accumulated statistics is stored.
Reference to the remaining portions of the specification, including the drawings and claims, will realize other features and advantages of the present invention. Further features and advantages of the present invention, as well as the structure and operation of various embodiments of the present invention, are described in detail below with respect to the accompanying drawings. In the drawings, like reference numbers indicate identical or functionally similar elements.